* exec/trace.c (rpl_stpcpy): Replace stpcpy if absent.
authorPo Lu <luangruo@yahoo.com>
Thu, 14 Mar 2024 06:21:49 +0000 (14:21 +0800)
committerPo Lu <luangruo@yahoo.com>
Thu, 14 Mar 2024 06:21:49 +0000 (14:21 +0800)
exec/trace.c

index 64dadc092c2d65dcaf53c3830686834ee59ff8fb..05d862f5b9f3e5a0ac4daf058775727a44e0c71f 100644 (file)
@@ -895,6 +895,36 @@ handle_exec (struct exec_tracee *tracee, USER_REGS_STRUCT *regs)
   return 3;
 }
 
+\f
+
+/* Define replacements for required string functions.  */
+
+#if !defined HAVE_STPCPY || !defined HAVE_DECL_STPCPY
+
+/* Copy SRC to DEST, returning the address of the terminating '\0' in
+   DEST.  */
+
+static char *
+rpl_stpcpy (char *dest, const char *src)
+{
+  register char *d;
+  register const char *s;
+
+  d = dest;
+  s = src;
+
+  do
+    *d++ = *s;
+  while (*s++ != '\0');
+
+  return d - 1;
+}
+
+#define stpcpy rpl_stpcpy
+#endif /* !defined HAVE_STPCPY || !defined HAVE_DECL_STPCPY */
+
+\f
+
 /* Modify BUFFER, of size SIZE, so that it holds the absolute name of
    the file identified by BUFFER, relative to the current working
    directory of TRACEE if FD be AT_FDCWD, or the file referenced by FD